Data, Democracy & Development (DDD) summer field practice course
At Azim Premji University
11 May, 2025
I am Ayush.
I am a researcher working at the intersection of data, development and economics.
I am a RStudio (Posit) certified tidyverse Instructor.
I am a Researcher at Oxford Poverty and Human development Initiative (OPHI), at the University of Oxford.
Do you have a SurveyCTO account? if not, register for a free account here
Please download the SurveyCTO Collect app on your phone
Get a working understanding of how components of survey tech work.
Design and program a survey questionnaire to make it available for field use.
Extract the collected data for analyses.
Build an intuition on how to ask questions.
Advanced methods of communicating with servers using API.
Data encryption for sensitive data.
Building data pipelines that extract, clean and present analyses.
Sampling theory, and analyses.
and how it works
But Why should I know this stupid tech stuff? 1
Say, there is only one single question. Nothing else is of interest to you. Everyone and anyone can be asked this question.
What would the form definition then look like?
First (name,label), you need the exact phrasing of the question.
Second (type), what is the type of answer that you expect and accept? (a number, a date, an image?)
Third (constraint), any reasonable constraints on the answers? (an age range, a date range ?)
Create a copy of the file from the previous example.
Rename the file.
Open the newly renamed file. Remove all rows except the title rows from the survey sheet.
As discussed in the previous slide, add a single question in the survey sheet. Populate all necessary columns.
Remove all rows except the title row from the choices sheet.
Add row in choices sheet if needed.
Change the form title, and form ID in the settings sheet.
Upload the form on your server and test.
Before we move ahead..
Why?
Lets us calculate on the fly, apply conditional flows to questions, and validate answers.
There are two important ideas from the syntax point of view
First, referring to the value of a specific field.
Second, referring to the values the current field.
We shall look at how these are used.
In the trivial-biryani-survey I use ${enrolled} = 1 to ensure that questions are asked to respondents that report to be enrolled in college.
I also use .>16 and .<130 to ensure age values are validated? Do you think my range is a reasonable one?
Can you find other instances in the biryani survey where I use such expression?
How is the $ operator different from the . operator?
See this page to browse through applying other logical and mathematical operations.
The need to restrict answers to a reasonable set of options or numbers.
How many people live in your house: “56”
The constraints are implemented in the constraint column of the form definition
The constraints can be accompanied with a message for the enumerator. This can be done using the constraint message column of the form definition
Can you find the constraint implemented in the trivial-biryani-survey for number of times a respondent consumes biryani in a week?
Email: ayush.ap58@gmail.com